﻿//URICK 26/10/2012
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EnterpriseLibraryWrapper;
using itau.im.entidade;
using System.Data;

namespace itau.im.dado
{
    class PoolValidacaoEnvioTesourariaDAO : IPoolValidacaoEnvioTesourariaDAO
    {
        public bool ValidarEnvioCurvasTesouraria(Curva curva, String idUsuario)
        {
            IDataAccessWrapper data = null;
            data = EnterpriseLibraryFactory.GetDataAccess();
            DateTime dataReferencia = DateTime.Now;

            try
            {
                data.BeginTransaction();

                data.ParameterIn.Add(new ParameterInWrapper("@COD_CURV", curva.CodigoCurva, DbType.Int32));

                data.ParameterIn.Add(new ParameterInWrapper("@DAT_CURV_VALI_ENVO", idUsuario, DbType.DateTime));
                data.ParameterIn.Add(new ParameterInWrapper("@USERID_VALI_ENVO", dataReferencia, DbType.String));

                //URICK AJUSTAR NOME DA PROC
                data.ExecuteNonQuery("DB2IM.IMXXX");
                return true;
            }
            catch (DadosException ex)
            {
                data.RollBackTransaction();
                EnterpriseLibraryFactory.GetExceptionHandler().HandleException(ex, "ErrosDados");
                return false;
            }
            catch (Exception ex)
            {
                data.RollBackTransaction();
                EnterpriseLibraryFactory.GetExceptionHandler().HandleException(ex, "ErrosDados");
                return false;
            }
            finally
            {
                data.Dispose();
                data = null;
            }

            return false;
        }
    }
}
